package cz.cvut.fit.crhonjar.mi.paa.dunedin.solver;

import java.util.AbstractQueue;
import java.util.Iterator;
import java.util.Stack;

import cz.cvut.fit.crhonjar.mi.paa.dunedin.State;

public class BruteForceDFSSolver extends Solver {

	@Override
	public void initializeQue() {
		this.que = new AbstractQueue<State>() {

			Stack<State> s = new Stack<State>();

			@Override
			public boolean add(final State e) {
				return this.s.add(e);
			}

			@Override
			public Iterator<State> iterator() {
				return this.s.iterator();
			}

			@Override
			public boolean offer(final State e) {
				return this.add(e);
			}

			@Override
			public State peek() {
				return this.s.peek();
			}

			@Override
			public State poll() {
				return this.s.pop();
			}

			@Override
			public int size() {
				return this.s.size();
			}

		};
	}

}
